
let GridCfg = require('./grid_cfg');

// 首行偶数 grid
let evenCrossGrid = {
    getLeftUp(rowIdx,colIdx) {
        // 偶数行
        if (rowIdx % 2 == 0){
            return [rowIdx - 1,colIdx - 1];
        } else{
            return [rowIdx - 1,colIdx];
        }
    },

    getLeftDown(rowIdx,colIdx) {
        // 偶数行
        if (rowIdx % 2 == 0){
            return [rowIdx + 1,colIdx - 1];
        } else{
            return [rowIdx + 1,colIdx];
        }
    },

    getRightUp(rowIdx,colIdx) {
        // 偶数行
        if (rowIdx % 2 == 0){
            return [rowIdx - 1,colIdx];
        } else{
            return [rowIdx - 1,colIdx + 1];
        }
    },

    getRightDown(rowIdx,colIdx) {
        // 偶数行
        if (rowIdx % 2 == 0){
            return [rowIdx + 1,colIdx];
        } else{
            return [rowIdx + 1,colIdx + 1];
        }
    },
    getLeft(rowIdx,colIdx) {
        return [rowIdx,colIdx - 1];
    },
    getRight(rowIdx,colIdx) {
        return [rowIdx,colIdx + 1];
    },

    getMaxColIdx(rowIdx){
        if(rowIdx % 2 === 0){
            return GridCfg.MaxColumn - 1;
        }else{
            return GridCfg.MaxColumn - 2;
        }
    }
};

module.exports =  evenCrossGrid;
